This invention relates to an information processing system and, in particular, to an information processing system including an instruction processing unit which is operable under pipeline control.
An information processing system usually includes an instruction processing unit. Among others, the instruction processing unit processes, as a current instruction, each of program instructions which are fetched successively from a memory device. The instruction processing unit thereby produces a start signal. The information processing system further comprises a bank of general registers assigned with register numbers, respectively. One of the register numbers is indicated by the current instruction as an indicated number. The instruction processing unit reads an operand from the general register of the indicated number.
The program instructions include renewal instructions for renewing the general registers of the register numbers indicated by the respective renewal instruction. The current instruction will be called a current renewal instruction when the program instruction is a renewal instruction. The general register will be called a renewal register when the general register is to be renewed by the current renewal instruction. Moreover, the general registers will be called operand registers when operands should be read from the general registers by successive instructions which follows the current renewal instruction.
When the register number of the renewal register is equal to one of the register numbers of the operand registers, it is necessary for processing of the successive instructions by the instruction processing unit to wait renewal completion of the renewal register. Therefore, the instruction processing unit includes a register renewal waiting control circuit in order to wait complete processing of the renewal instruction for processing start of the successive instruction.
Such a register renewal waiting control circuit is disclosed in the specification of U.S. Pat. No. 4,128,880 issued to Seymour R. Cray, Jr. According to Cray, Jr., the register renewal waiting control circuit comprises reservation sections each corresponding to one of the registers. The reservation section stores information as to whether or not the corresponding register is currently involved in an executing process for the current renewal instruction. In processing one of the successive instructions, the register renewal waiting control circuit reads one of the reservation sections that is corresponding to at least one operand register indicated by the successive instruction and judges whether or not the operand register is available for production of an operand. When the operand register is not available, the register renewal waiting control circuit interrupts or suspends further processing of the successive instruction. When the operand register is available, the register renewal waiting control circuit either continues processing of the successive instruction without the interruption or restarts the previously suspended processing of the successive instruction. The conventional register renewal waiting control circuit needs the reservation sections for all the registers and also requires any circuits for detecting whether or not the registers are involved in the current renewal processing. Therefore, the conventional register renewal waiting control circuit is disadvantageous in that an increased number of circuit elements are necessary, which makes the instruction processing unit in a large scale.
The information processing system further comprises a plurality of execution devices. The program instructions may be operation instructions. The current renewal instruction and the successive instruction will be called a current operation instruction and a successive operation instruction, respectively, when the program instruction is an operation instruction. Each current operation instruction indicates one of the executing devices as an indicated device. Responsive to the start signal, the indicated device carries out operation on the operands read from the operand registers and produces a result of execution.
Even when the result of execution is equal to one of the operands which should be read from the operand registers indicated by the successive operation instruction, the operands are read from such operand registers in a conventional information processing system such as the above-mentioned information processing system disclosed by Cray, Jr. More specifically, the operands are read from the operand registers after the content of one of the operand registers is renewed by the result. Therefore, the conventional information processing system is disadvantageous in that it takes useless time which is necessary for operands to go and return between the executing devices and the operand registers.